﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Framework.Map
{
    public class Tile
    {
        private int _tileX; // Position of the tile
        private int _tileY; // Position of the tile
        private bool _tileEnterable; // If it is possible to enter the tile
        private int _label; // Label of the tile --> Not in use (10.03.2012)
        private int _texture; // Texture(ID) of the tile

        private int _fCount; // for AStar
        private int _gCount; // for AStar
        private int _hCount; // for AStar
        public Tile ParentTile; // for AStar

        public Tile(int TileX, int TileY)
        {
            _tileX = TileX;
            _tileY = TileY;
        }
        public Tile()
        {
            _tileEnterable = false;
        }
        public Tile(int TileX, int TileY, bool TileEnterable, int Texture)
        {
            _tileX = TileX;
            _tileY = TileY;
            _tileEnterable = TileEnterable;
            _label = 0;
            _texture = Texture;
        }

        public int Texture
        {
            get { return _texture; }
            set { _texture = value; }
        }

        public int TileX
        {
            get { return _tileX; }
            set { _tileX = value; }
        }
        public int TileY
        {
            get { return _tileY; }
            set { _tileY = value; }
        }
        public bool TileEnterable
        {
            get { return _tileEnterable; }
            set { _tileEnterable = value; }
        }
        public int FCount
        {
            get { return _fCount; }
            set { _fCount = value; }
        }
        public int GCount
        {
            get { return _gCount; }
            set { _gCount = value; }
        }
        public int HCount
        {
            get { return _hCount; }
            set { _hCount = value; }
        }
    }
}
